<?php

namespace App\Policies;

use App\Models\AdminUser;
use App\Models\User;
use Illuminate\Auth\Access\Response;
use Illuminate\Auth\Access\HandlesAuthorization;

class AdminUserpolicy
{
    use HandlesAuthorization;

    /**
     * Create a new policy instance.
     *
     * @return void
     */
    public function __construct()
    {
        //
    }

    // 删除和状态切换：第一个参数代表用户，第二个参数代表要操作的数据
    public function remove(AdminUser $adminUser,$targetAdminUser){
        // 当数据id=1时，禁止该操作返回false
        if($targetAdminUser->id==1){
            return Response::deny("不能对超级管理员做此操作");
        }
        return true;
    }
    // 只允许本人编辑
    public function modify(AdminUser $adminUser,$targetAdminUser){
        if($targetAdminUser->id==1){
            // 判断当前登录id和当前数据id是否不相同，不相同则直接false
            if($adminUser->id<>$targetAdminUser->id){
                return Response::deny("不能对超级管理员做此操作");
            }
        }
        return true;
    }
}
